package com.joinlabs.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.joinlabs.entity.Log;
import com.joinlabs.entity.PageBean;
import com.joinlabs.entity.Weibo;
import com.joinlabs.entity.WeiboUser;

public interface WeiboMapper {
    int deleteByPrimaryKey(Long weiboId);

    int insert(Weibo record);

    Weibo selectByPrimaryKey(Long weiboId);

    int updateByPrimaryKeySelective(Weibo record);

    int updateByPrimaryKey(Weibo record);
    
    /**
     * 发布一条微博
     * @param record
     * @return
     */
    int insertSelective(Weibo record);

    
    /**
     * 查询当前用户所有微博
     * @param userId
     * @return
     */
    List<Weibo> selectWeiboByUserId(Long userId);
    
    /**
     * 查询所有微博
     * @return
     */
    List<Weibo> selectAllWeibo();
    /**
     * 查询所有带图片的微博
     * @return
     */
    List<Weibo> selectImgWeibo();


	List<Weibo> selectWeiboById(Long userId);

    /**
     * 查询关注的人的微博
     * @return
     */
    List<Weibo> selectFriendWeibo(Long userId);
    /**
     * 通过类别查询weibo
     * @param flag
     * @return
     */
	List<Weibo> selectWeiboByType(String flag);
	
    //查詢所有首頁微博簡介
	List<Weibo> selectWeiboByS();

     /**
      * 通过类别id查询
      */
	List<Weibo> selectAllWeiboByTypeid(Long typeid);
	/**
	 * 通过微博id找微博详情
	 * @param wBid
	 * @return
	 */
	Weibo selectDetailMsg(long wBid);

	/**
	 * 点赞时点赞数+1
	 * @param weiboId
	 * @return
	 */
	int updateZan(Long weiboId);
	/**
	 * 取消点赞时点赞数-1
	 * @param weiboId
	 * @return
	 */
	int disupdateZan(Long weiboId);

	
	/**
	 * 模糊查询微博
	 * @param weiboContent
	 * @return
	 */
	List<Weibo> selectSomeWeibos(String weiboContent);


}